#ifndef INCLUDES_H
#define INCLUDES_H


typedef double real_T;
typedef double time_T;
typedef unsigned char boolean_T;
typedef int int_T;
typedef unsigned int uint_T;
typedef unsigned long ulong_T;
typedef char char_T;
typedef unsigned char uchar_T;
typedef char_T byte_T;



#include  <stdbool.h>
#include  <stdlib.h>
#include  <string.h>
#include  <math.h>
#include  <stdio.h>
                                 

#include "S32K144.h"
#include "device_registers.h"
#include "string.h"
#include "stddef.h"
#include "s32_core_cm4.h"

#include "Lib_RTC.h"
#include "Lib_NVM.h"

/*==============================Lib=========================*/
//#include "Delay.h"
//#include "PrjCfg.h"


#include "../src/Shares/Init/Bms.h"
#include "../src/Shares/STGLIB/Delay.h"
#include "../src/Shares/PrjCfg.h"
#include "../src/Shares/GlobalUserFunc.h"

/*==============================DRV=========================*/
#include "../src/BSW/DRV/drv_system_clock.h"
#include "../src/BSW/DRV/drv_gpio.h"
#include "../src/BSW/DRV/drv_flexcan.h"
#include "../src/BSW/DRV/drv_spi.h"
#include "../src/BSW/DRV/drv_nvic.h"
#include "../src/BSW/DRV/drv_adc.h"
#include "../src/BSW/DRV/drv_ftm.h"
#include "../src/BSW/DRV/drv_i2c.h"
#include "../src/BSW/DRV/drv_lpit.h"
#include "../src/BSW/DRV/drv_i2c_cpu.h"
#include "../src/BSW/DRV/drv_flash.h"
#include "../src/BSW/DRV/drv_eeprom.h"



#include "../src/BSW/Cmplx/TJA1043/TJA1043.h"
#include "../src/BSW/Cmplx/TJA1145/TJA1145.h"

#include  "../src/BSW/Cmplx/CY15/exEEP.h"
#include  "../src/BSW/Cmplx/CY15/cy15.h"

#if DFLASH_AT45_USE
#include  "../src/BSW/Cmplx/ExDflash/Ex_AT45DB/Ex_Dflash.h"
#include  "../src/BSW/Cmplx/ExDflash/Ex_AT45DB/AT45DB.h"
#endif


#if  DFLASH_GD25_USE
#include  "../src/BSW/Cmplx/ExDflash/Ex_GD25Q64C/DatRec.h"
#include  "../src/BSW/Cmplx/ExDflash/Ex_GD25Q64C/ExDflash.h"
#endif


#include  "../src/BSW/Cmplx/ExDflash/Ex_AT45DB/AT45DB.h"
#include  "../src/BSW/Cmplx/ExDflash/Ex_AT45DB/Ex_Dflash.h"

#include  "../src/BSW/Cmplx/RTC/PCA8565/PCA8565.h"
#include  "../src/BSW/Cmplx/RTC/RA8900/RA8900.h"
#include  "../src/BSW/Cmplx/RTC/Date_USER.h"

#include  "../src/BSW/Cmplx/MC4051/MC4051.h"

#if AFE_LTC6815_USE

#include  "../src/BSW/Cmplx/LTC6815/LTC6815.h"
#include  "../src/BSW/Cmplx/LTC6815/LTC6820.h"
#include  "../src/BSW/Cmplx/LTC6815/LTC6820Driver.h"
#include  "../src/BSW/Cmplx/LTC6815/LTC6815_USER.h"
#endif

#if AFE_MC33771_USE
#include  "../src/BSW/Cmplx/MC3377X/MC3377X_USER.h"
#endif


#include "../src/BSW/HWAbs/CellVolt/CellVolt.h"
#include "../src/BSW/HWAbs/CellTemp/CellTemp.h"
#include "../src/BSW/HWAbs/P12V/P12V.h"
#include "../src/BSW/HWAbs/H12V/H12V.h"
#include "../src/BSW/HWAbs/QSCC/QSCC.h"
#include "../src/BSW/HWAbs/RELAY/RELAY.h"
#include "../src/BSW/HWAbs/Current/Current.h"

#include "../src/BSW/HWAbs/DCHV/DCHV.h"
#include "../src/BSW/HWAbs/IGNITION/IGNITION.h"
#include "../src/BSW/HWAbs/GpioCfg.h"
#include "../src/BSW/HWAbs/IMU/IMU.h"
#include "../src/BSW/HWAbs/PWM/PWM.h"
#include "../src/BSW/HWAbs/BmsCfg.h"


/*==============================RTOS========================*/
#include  "../src/BSW/FREERTOS/include/FreeRTOS.h"
#include  "../src/BSW/FREERTOS/include/task.h"
#include  "../src/BSW/FREERTOS/include/queue.h"
#include  "../src/BSW/FREERTOS/include/timers.h"
#include  "../src/BSW/FREERTOS/include/semphr.h"
#include  "../src/BSW/FREERTOS/include/FreeRTOSConfig.h"


/*==============================MODEL=========================*/
#include "../src/ASW/FLTM/FLTM.h"
#include "../src/ASW/VEWM/VEWM.h"
#include "../src/ASW/VEWM/VEWM_private.h"
#include "../src/ASW/SOPE/SOPE.h"
#include "../src/ASW/SOCE/SOCE.h"
#include "../src/ASW/SOCE/SOCE_private.h"
#include "../src/ASW/FLTM/FltCodeTask.h"
#include "../src/ASW/TMSC/TMSC.h"
#include "../src/ASW/SOTE/SOTE.h"
#include "../src/ASW/Tab/Tab.h"
#include "../src/ASW/Tab/Tab_private.h"
#include "../src/ASW/SOH/SOH.h"
#include "../src/ASW/NVM/NVM.h"
#include "../src/ASW/BALC/BALC.h"
#include "../src/ASW/LVPD/LVPD.h"
/*==============================RTE=========================*/

/*==============================BSW=========================*/

#include "../src/BSW/CommS/VCAN/VCAN.h"
#include "../src/BSW/CommS/VCAN/VechCode.h"
#include "../src/BSW/CommS/VCAN/Debug_Rx.h"
#include "../src/BSW/CommS/VCAN/Debug_Tx.h"
#include "../src/BSW/CommS/ICAN/IN_CAN_CFG.h"
#include "../src/BSW/CommS/ICAN/IN_CAN.h"
#include "../src/BSW/CommS/CCAN/DCCAN_Tr_CFG.h"
#include "../src/BSW/CommS/CCAN/DCCAN.h"

/*==============================UDS=========================*/

#include  "../src/BSW/CommS/NM/UDS/CanTp/CanTp_Cbk.h"
#include  "../src/BSW/CommS/NM/UDS/CanTp/CanTp_Cfg.h"
#include  "../src/BSW/CommS/NM/UDS/CanTp/CanTp.h"

#include  "../src/BSW/CommS/NM/UDS/Dcm/App_Dcm.h"
#include  "../src/BSW/CommS/NM/UDS/Dcm/Dcm_Cbk.h"
#include  "../src/BSW/CommS/NM/UDS/Dcm/Dcm_Cfg.h"
#include  "../src/BSW/CommS/NM/UDS/Dcm/Dcm_Types.h"
#include  "../src/BSW/CommS/NM/UDS/Dcm/Dcm.h"

#include  "../src/BSW/CommS/NM/UDS/Dtc_Collect/App_Dtc.h"
#include  "../src/BSW/CommS/NM/UDS/Dtc_Collect/Dtc_Collect.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR_CanTp.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR_CanIf.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR_CanTp.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR_Cfg.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR_Com.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR_Dcm.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR_Lcfg.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR_PBcfg.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR_Types.h"
#include  "../src/BSW/CommS/NM/UDS/Pdur/PduR.h"

#include "../src/BSW/CommS/NM/CanIf/CanIf.h"

#include "../src/BSW/CommS/NM/YKBase/MemMap.h"
#include "../src/BSW/CommS/NM/YKBase/ComStack_Cfg.h"
#include "../src/BSW/CommS/NM/YKBase/BaseComm.h"
#include "../src/BSW/CommS/NM/YKBase/Compiler.h"
#include "../src/BSW/CommS/NM/YKBase/Compiler_Cfg.h"
#include "../src/BSW/CommS/NM/YKBase/ComStack_Types.h"

#include "../src/BSW/CommS/NM/CanApp/CANApp.h"
#include "../src/BSW/CommS/NM/NM/OSEK/OsekNm.h"
#include "../src/BSW/CommS/NM/NM/OSEK/OsekNm_Cfg.h"

#include "../src/BSW/CommS/NM/NM/AutoSar/AutoSarNM.h"

#include "../src/BSW/CommS/NM/CCP/Ccp.h"

#include  "../src/BSW/CommS/NM/Bootloader/Bootloader.h"
#if (REBOOT_FUNCTION_ENABLE == STD_ON)
#include  "../src/BSW/CommS/NM/Bootloader/reboot/Bmu.h"
#include  "../src/BSW/CommS/NM/Bootloader/reboot/BmuReboot.h"
#endif /* (REBOOT_FUNCTION_ENABLE == STD_ON) */
#if(USE_AUTOSARNM_MODULE == STD_ON)
#include  "../src/BSW/CommS/UDS_NM/NM/AutoSar/NM.h"
#endif

#include "../src/BSW/MemS/DataM/SYS_PAR.h"

#include "../src/BSW/OsTask/Task_Spl.h"
#include "../src/BSW/OsTask/Task_Cmplx.h"
#include "../src/BSW/OsTask/Task_Comm.h"
#include "../src/BSW/OsTask/Task_NVM.h"
#include "../src/BSW/OsTask/MainTask.h"

/*==============================RTE=========================*/
#include "../src/RTE/RTE_TAB.h"
#include "../src/RTE/RTE_CAN.h"
#include "../src/RTE/RTE.h"
#include "../src/RTE/RTE_IO.h"

#endif

